//
//  RBPagerView.h
//  RBDemoProj
//
//  Created by Lan on 2019/3/15.
//  Copyright © 2019 SummerTea. All rights reserved.
//
//  如果想自己指定一个view,实现下rbDesScrollView

#import <UIKit/UIKit.h>
#import "RBPagerHeaderView.h"
#import "RBPagerScrollView.h"

NS_ASSUME_NONNULL_BEGIN

@class RBPagerHeaderModel;
@interface RBPagerView : UIView

//从前向后,顺序设置

/** 这里要vc */
@property(nonatomic, copy) UIViewController *(^getVcBlock)(NSInteger index);
/*
 整个头部是一个floatView,里面固定有一个headerView用于切换
 headerStickTop 控制header悬浮位置,如果有自定义导航栏,建议
 状态栏+导航栏高度,如果没有自定义导航栏,建议0
 headerBottom header在floatView中距离底部位置,一般为0
 headerHeight header的高度
 floatViewHeight floatView高度
 */
- (void)configWithHeaderStickTop: (CGFloat)headerStickTop
                    headerBottom: (CGFloat)headerBottom
                    headerHeight: (CGFloat)headerHeight
                 floatViewHeight: (CGFloat)floatViewHeight;

- (void)reloadWithHeaderStickTop: (CGFloat)headerStickTop
                    headerBottom: (CGFloat)headerBottom
                    headerHeight: (CGFloat)headerHeight
                 floatViewHeight: (CGFloat)floatViewHeight;

/** 开始布局 */
- (void)setupWithModel: (RBPagerHeaderModel *)model;

/** view暴露出来,自己往里加东西 */
@property(nonatomic, strong, readonly) UIView *floatView;
@property(nonatomic, strong, readonly) RBPagerHeaderView *pagerHeaderView;
@property(nonatomic, strong, readonly) RBPagerScrollView *pagerContentView;

/** 头部向上的滑动距离百分比,用来控制自定义导航栏的透明度 */
@property(nonatomic, copy) void(^yProgressBlock)(CGFloat yProgress);

/** 左右不滑动,防止与删除/修改这类手势冲突 */
@property(nonatomic, assign) BOOL ignoreHorizontalScroll;

@end

NS_ASSUME_NONNULL_END
